package org.xb.decoupling;

/**
 * ClassA 和 ClassB 通过接口进行解耦。ClassA 不再直接依赖于 ClassB，而是依赖于一个接口 InterfaceB。这降低了耦合度，提高了代码的可维护性和可读性。
 * 如果需要修改 ClassB 的实现，只需确保新的实现符合 InterfaceB 接口即可，而不会影响到 ClassA。
 */
public class Client {
    public static void main(String[] args) {
        // 通过接口进行解耦
        InterfaceA interfaceA = new ClassA();
        interfaceA.doSomething();
    }
}
